package clases;

public class Redirigir extends Accion {

	private IP destino;
	private IP nuevoDestino;
	private Firewall fire;
	
	public Redirigir(IP destino, IP nuevoDestino, Firewall fire) {
		super();
		this.destino = destino;
		this.nuevoDestino = nuevoDestino;
		this.fire = fire;
	}

	@Override
	public void aplicar(Paquete paquete) {
		if(paquete.getDestino()== this.getDestino() 
				|| paquete.getDestino().getNroIP() == this.getDestino().getNroIP()
				|| paquete.getDestino().getPuerto() == this.getDestino().getPuerto()){
		new Paquete(paquete.getMsg(), paquete.getOrigen(), this.getNuevoDestino(), paquete.getSubred());
		this.fire.recibirPaquete(paquete);
		}
	}

	public IP getNuevoDestino() {
		return nuevoDestino;
	}

	public void setNuevoDestino(IP nuevoDestino) {
		this.nuevoDestino = nuevoDestino;
	}

	public IP getDestino() {
		return destino;
	}

	public void setDestino(IP destino) {
		this.destino = destino;
	}

	public Firewall getFire() {
		return fire;
	}

	public void setFire(Firewall fire) {
		this.fire = fire;
	}
	
}
